In collaboration with a professor from Sheridan's Child and Youth Care program, Stop and Breathe is a game that is designed to teach players a breathing
technique that can help them deal with the onset of a panic/anxiety attack.
You play as Ace, a teen who struggles with their anxiety and is trapped in their own mind. You learn the breathing technique throughout the game with your companion, Zen.
Use the technique to clear away the anxiety and solve puzzles to progress.
I was responsible for building our game's dialogue system. Early iteration of the dialogue box just held the text that was supposed to be shown and players would have to walk into triggers
to activate the dialogue. This was very limited because we wanted dialogue to be shown while the player performs Life Breathing and when players loaded a new scene. We also recieved feedback
that player's didn't know who was talking and whoever was had no personality.
I revamped the dialogue system from the ground up. I dedicated a component that would ONLY handle dialogue and moved everything there. I then added a clear pipeline that the dialogue would go through
by doing a bunch of checks when the dialogue system is activated. Namely to know where the dialogue is coming from, if the dialogue was timed or waited for a button press, etc. Checking for where the
dialogue was coming from allowed me to route the appropriate actions (such as if the dialogue is meant to be shown during a certain phase of breathing). I also added the ability to add dialogue for
when the player enters a new room on load if our narrative designer wanted to add context before the puzzle began.
Then with the help of our wonderful artist, we were able to add personality by creating an arted dialogue box with different emotions Zen could display while the dialogue was being said (which I
allowed our narrative designer to change for each line). In the end, the dialogue system ended up being in a great state that I was very satisfied with.
I was responsible for implementing the early version of the breathing mechanic which has gone through multiple iterations. The first iteration used a post processing material that darken
the scene around the player. Then a sphere would enlarge at the center of the player which would 'dispel' the anxiety after each completion of Life Breathing. It worked for our proof of concept
but it was limiting because there was no 'in-between' state. The circle either completely dispelled the anxiety or didn't. So I had to approach this differently.
I then changed the method to changing the saturation of the scene. This allowed us to have the more gradual change in the scene. We also added a new post processing material that gave objects in the scene
a small chromatic aberration effect that was subtle to try and enforce the anxiety effect, which was received well. Only problem with this is that this method does not let us cull certain game objects
to keep their colour, such as the breathing pedestal.
I revisited the first method because it allowed me to cull game objects and I got the idea to combine the two methods. I used the same material in method one, added a desaturate node in the material graph and
played around until I got the effect I wanted and changed that value instead of the Global Saturation value found on the post processing volume. This allowed me to cull game objects from the saturation effect
WHILE also keeping the same gradual change!